'use strict';
const db = uniCloud.database();

exports.main = async (event, context) => {
  try {
    console.log('开始测试数据库连接...');
    
    // 测试基本数据库连接
    const testRes = await db.get();
    console.log('基础数据库连接测试成功:', testRes);
    
    // 测试查询用户集合
    const usersRes = await db.collection('uni-id-users').get();
    console.log('用户集合查询成功，用户数量:', usersRes.result.data.length);
    console.log('前3个用户:', usersRes.result.data.slice(0, 3));
    
    // 测试查询特定角色的用户
    const supplierUsers = await db.collection('uni-id-users')
      .where({
        role: db.command.exists(true)
      })
      .get();
      
    console.log('有角色的用户数量:', supplierUsers.result.data.length);
    console.log('有角色的前3个用户:', supplierUsers.result.data.slice(0, 3));
    
    return {
      code: 0,
      msg: '数据库连接测试成功',
      data: {
        totalUsers: usersRes.result.data.length,
        usersWithRole: supplierUsers.result.data.length,
        sampleUsers: usersRes.result.data.slice(0, 3)
      }
    }
  } catch (err) {
    console.error('数据库连接测试失败:', err);
    return {
      code: -1,
      msg: '数据库连接测试失败: ' + err.message,
      error: err
    }
  }
};